
#ifndef VERIFYDIALOG_H
#define VERIFYDIALOG_H

#include <BButton>
#include <BLineEdit>
#include <BCheckBox>
#include <BComboBox>
#include <BDialog>

using namespace BWE;

class VerifyDialog : public BDialog
{
	BOBJECT(VerifyDialog);
public:
	VerifyDialog(BWidget* parent = 0);
	~VerifyDialog();

	virtual bool query(const BString& text, BValue& value) const;
	using BDialog::query;

protected:
	void slotPropertyChanged(BObject* object, const BValue& value);

	void slotUsernameEditFinished(BObject* object, const BValue& value);

	void slotPasswordEditFramed(BWidget* widget);
	void slotPasswordEditKeyPress(BObject* object, const BValue& value);
	void slotVisualCheckBoxChecked();

	void slotExpandShortcutTriggered(BObject* object, const BValue& value);

	void slotConfirmButtonClicked();
	void slotCancelButtonClicked();

private:
	BComboBox*		_usernameComboBox;
	BLineEdit*		_passwordEdit;
	BCheckBox*		_visualCheckBox;
	BButton*		_confirmButton;
	BButton*		_cancelButton;
};

#endif
